;author : fengxiang 3180103426
;date   : 2019/11/08
;=============================

data segment stack  ;remove warning
    asc db 000h,000h,000h,000h,000h,000h,000h,000h	;00
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,07Eh,081h,0A5h,081h,081h,0BDh	;01
        db 099h,081h,081h,07Eh,000h,000h,000h,000h
        db 000h,000h,07Ch,0FEh,0FEh,0D6h,0FEh,0FEh	;02
        db 0BAh,0C6h,0FEh,07Ch,000h,000h,000h,000h
        db 000h,000h,000h,06Ch,0EEh,0FEh,0FEh,0FEh
        db 0FEh,07Ch,038h,010h,000h,000h,000h,000h
        db 000h,000h,000h,010h,038h,07Ch,0FEh,07Ch
        db 038h,010h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,010h,038h,038h,010h,06Ch
        db 0EEh,06Ch,010h,038h,000h,000h,000h,000h
        db 000h,000h,010h,038h,07Ch,07Ch,0FEh,0FEh
        db 0FEh,06Ch,010h,038h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,018h,03Ch,03Ch
        db 03Ch,018h,000h,000h,000h,000h,000h,000h
        db 0FFh,0FFh,0FFh,0FFh,0FFh,0E7h,0C3h,0C3h
        db 0C3h,0E7h,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
        db 000h,000h,000h,000h,018h,03Ch,066h,066h
        db 066h,03Ch,018h,000h,000h,000h,000h,000h
        db 0FFh,0FFh,0FFh,0FFh,0E7h,0C3h,099h,099h
        db 099h,0C3h,0E7h,0FFh,0FFh,0FFh,0FFh,0FFh
        db 000h,000h,01Eh,00Eh,01Eh,036h,078h,0CCh
        db 0CCh,0CCh,0CCh,078h,000h,000h,000h,000h
        db 000h,000h,03Ch,066h,066h,066h,03Ch,018h
        db 07Eh,018h,018h,018h,000h,000h,000h,000h
        db 000h,000h,01Eh,01Ah,01Eh,018h,018h,018h
        db 018h,078h,0F8h,070h,000h,000h,000h,000h
        db 000h,000h,03Eh,036h,03Eh,036h,036h,076h
        db 0F6h,066h,00Eh,01Eh,00Ch,000h,000h,000h
        db 000h,000h,018h,0DBh,07Eh,03Ch,066h,066h
        db 03Ch,07Eh,0DBh,018h,000h,000h,000h,000h
        db 000h,000h,000h,080h,0E0h,0F0h,0FCh,0FEh
        db 0FCh,0F0h,0E0h,080h,000h,000h,000h,000h
        db 000h,000h,000h,002h,00Eh,03Eh,07Eh,0FEh
        db 07Eh,03Eh,00Eh,002h,000h,000h,000h,000h
        db 000h,000h,018h,03Ch,07Eh,018h,018h,018h
        db 018h,07Eh,03Ch,018h,000h,000h,000h,000h
        db 000h,000h,066h,066h,066h,066h,066h,066h
        db 066h,000h,066h,066h,000h,000h,000h,000h
        db 000h,000h,07Fh,0DBh,0DBh,0DBh,0DBh,07Bh
        db 01Bh,01Bh,01Bh,01Bh,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,060h,07Ch,0F6h
        db 0DEh,07Ch,00Ch,0C6h,0C6h,07Ch,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 0FEh,0FEh,0FEh,0FEh,000h,000h,000h,000h
        db 000h,000h,018h,03Ch,07Eh,018h,018h,018h
        db 07Eh,03Ch,018h,07Eh,000h,000h,000h,000h
        db 000h,000h,018h,03Ch,07Eh,018h,018h,018h
        db 018h,018h,018h,018h,000h,000h,000h,000h
        db 000h,000h,018h,018h,018h,018h,018h,018h
        db 018h,07Eh,03Ch,018h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,00Ch,00Eh,0FFh
        db 00Eh,00Ch,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,030h,070h,0FEh
        db 070h,030h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,0C0h,0C0h
        db 0C0h,0FEh,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,024h,066h,0FFh
        db 066h,024h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,010h,038h,038h,038h,07Ch
        db 07Ch,0FEh,0FEh,000h,000h,000h,000h,000h
        db 000h,000h,000h,0FEh,0FEh,07Ch,07Ch,07Ch
        db 038h,038h,010h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,018h,03Ch,03Ch,03Ch,03Ch,018h
        db 018h,000h,018h,018h,000h,000h,000h,000h
        db 000h,036h,036h,036h,036h,014h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,06Ch,06Ch,06Ch,0FEh,06Ch,06Ch
        db 0FEh,06Ch,06Ch,06Ch,000h,000h,000h,000h
        db 000h,000h,018h,018h,07Ch,0C6h,0C0h,078h
        db 03Ch,006h,0C6h,07Ch,018h,018h,000h,000h
        db 000h,000h,000h,000h,000h,062h,066h,00Ch
        db 018h,030h,066h,0C6h,000h,000h,000h,000h
        db 000h,000h,038h,06Ch,038h,030h,076h,07Eh
        db 0CCh,0CCh,0CCh,076h,000h,000h,000h,000h
        db 000h,00Ch,00Ch,00Ch,018h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,00Ch,018h,030h,030h,030h,030h
        db 030h,030h,018h,00Ch,000h,000h,000h,000h
        db 000h,000h,030h,018h,00Ch,00Ch,00Ch,00Ch
        db 00Ch,00Ch,018h,030h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,06Ch,038h,0FEh
        db 038h,06Ch,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,018h,018h,07Eh
        db 018h,018h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,00Ch,00Ch,00Ch,018h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,0FEh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,018h,018h,000h,000h,000h,000h
        db 000h,000h,000h,000h,002h,006h,00Ch,018h
        db 030h,060h,0C0h,080h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0CEh,0DEh,0F6h
        db 0E6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,018h,078h,018h,018h,018h,018h
        db 018h,018h,018h,07Eh,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,006h,00Ch,018h
        db 030h,060h,0C6h,0FEh,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,006h,006h,03Ch,006h
        db 006h,006h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,00Ch,01Ch,03Ch,06Ch,0CCh,0CCh
        db 0FEh,00Ch,00Ch,01Eh,000h,000h,000h,000h
        db 000h,000h,0FEh,0C0h,0C0h,0C0h,0FCh,006h
        db 006h,006h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C0h,0C0h,0FCh,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0FEh,0C6h,006h,00Ch,018h,030h
        db 030h,030h,030h,030h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,07Ch,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,0C6h,07Eh
        db 006h,006h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,00Ch,00Ch,000h
        db 000h,00Ch,00Ch,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,00Ch,00Ch,000h
        db 000h,00Ch,00Ch,00Ch,018h,000h,000h,000h
        db 000h,000h,000h,00Ch,018h,030h,060h,0C0h
        db 060h,030h,018h,00Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,0FEh,000h
        db 0FEh,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,060h,030h,018h,00Ch,006h
        db 00Ch,018h,030h,060h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,00Ch,018h,018h	;3f
        db 018h,000h,018h,018h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,0DEh,0DEh
        db 0DEh,0DCh,0C0h,07Eh,000h,000h,000h,000h
        db 000h,000h,038h,06Ch,0C6h,0C6h,0C6h,0FEh
        db 0C6h,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,0FCh,066h,066h,066h,07Ch,066h
        db 066h,066h,066h,0FCh,000h,000h,000h,000h
        db 000h,000h,03Ch,066h,0C2h,0C0h,0C0h,0C0h
        db 0C0h,0C2h,066h,03Ch,000h,000h,000h,000h
        db 000h,000h,0F8h,06Ch,066h,066h,066h,066h
        db 066h,066h,06Ch,0F8h,000h,000h,000h,000h
        db 000h,000h,0FEh,066h,060h,064h,07Ch,064h
        db 060h,060h,066h,0FEh,000h,000h,000h,000h
        db 000h,000h,0FEh,066h,060h,064h,07Ch,064h
        db 060h,060h,060h,0F0h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C0h,0C0h,0C0h
        db 0CEh,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0C6h,0C6h,0FEh,0C6h
        db 0C6h,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,03Ch,018h,018h,018h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,000h,03Ch,018h,018h,018h,018h,018h
        db 018h,0D8h,0D8h,070h,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0CCh,0D8h,0F0h,0F0h
        db 0D8h,0CCh,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,0F0h,060h,060h,060h,060h,060h
        db 060h,062h,066h,0FEh,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0EEh,0EEh,0FEh,0D6h
        db 0D6h,0D6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0E6h,0E6h,0F6h,0DEh
        db 0CEh,0CEh,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0FCh,066h,066h,066h,066h,07Ch
        db 060h,060h,060h,0F0h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0D6h,0D6h,07Ch,006h,000h,000h,000h
        db 000h,000h,0FCh,066h,066h,066h,07Ch,078h
        db 06Ch,066h,066h,0E6h,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C0h,0C0h,070h,01Ch
        db 006h,006h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,07Eh,05Ah,018h,018h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,06Ch,038h,010h,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0C6h,0D6h,0D6h,0D6h
        db 0FEh,0EEh,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,0C6h,0C6h,0C6h,06Ch,038h,038h
        db 06Ch,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,066h,066h,066h,066h,066h,03Ch
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,000h,0FEh,0C6h,086h,00Ch,018h,030h
        db 060h,0C2h,0C6h,0FEh,000h,000h,000h,000h
        db 000h,000h,07Ch,060h,060h,060h,060h,060h
        db 060h,060h,060h,07Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,080h,0C0h,060h,030h
        db 018h,00Ch,006h,002h,000h,000h,000h,000h
        db 000h,000h,07Ch,00Ch,00Ch,00Ch,00Ch,00Ch
        db 00Ch,00Ch,00Ch,07Ch,000h,000h,000h,000h
        db 000h,010h,038h,06Ch,0C6h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0FFh,000h,000h
        db 000h,018h,018h,018h,00Ch,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,000h,0E0h,060h,060h,07Ch,066h,066h
        db 066h,066h,066h,0FCh,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Ch,0C6h,0C0h
        db 0C0h,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,01Ch,00Ch,00Ch,07Ch,0CCh,0CCh
        db 0CCh,0CCh,0CCh,07Eh,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Ch,0C6h,0C6h
        db 0FEh,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,01Ch,036h,030h,030h,0FCh,030h
        db 030h,030h,030h,078h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,076h,0CEh,0C6h
        db 0C6h,0CEh,076h,006h,0C6h,07Ch,000h,000h
        db 000h,000h,0E0h,060h,060h,07Ch,066h,066h
        db 066h,066h,066h,0E6h,000h,000h,000h,000h
        db 000h,000h,018h,018h,000h,038h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,000h,00Ch,00Ch,000h,01Ch,00Ch,00Ch
        db 00Ch,00Ch,00Ch,0CCh,0CCh,078h,000h,000h
        db 000h,000h,0E0h,060h,060h,066h,066h,06Ch
        db 078h,06Ch,066h,0E6h,000h,000h,000h,000h
        db 000h,000h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,01Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,06Ch,0FEh,0D6h
        db 0D6h,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0DCh,066h,066h
        db 066h,066h,066h,066h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Ch,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0DCh,066h,066h
        db 066h,066h,07Ch,060h,060h,0F0h,000h,000h
        db 000h,000h,000h,000h,000h,076h,0CCh,0CCh
        db 0CCh,0CCh,07Ch,00Ch,00Ch,01Eh,000h,000h
        db 000h,000h,000h,000h,000h,0DCh,066h,060h
        db 060h,060h,060h,0F0h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Ch,0C6h,0C0h
        db 07Ch,006h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,030h,030h,030h,0FCh,030h,030h
        db 030h,030h,036h,01Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0CCh,0CCh,0CCh
        db 0CCh,0CCh,0CCh,076h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0C6h,0C6h,0C6h
        db 0C6h,06Ch,038h,010h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0C6h,0C6h,0D6h
        db 0D6h,0D6h,0FEh,06Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0C6h,0C6h,06Ch
        db 038h,06Ch,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0C6h,0C6h,0C6h
        db 0C6h,0CEh,076h,006h,0C6h,07Ch,000h,000h
        db 000h,000h,000h,000h,000h,0FEh,086h,00Ch
        db 018h,030h,062h,0FEh,000h,000h,000h,000h
        db 000h,000h,00Eh,018h,018h,018h,070h,018h
        db 018h,018h,018h,00Eh,000h,000h,000h,000h
        db 000h,000h,018h,018h,018h,018h,000h,018h
        db 018h,018h,018h,018h,000h,000h,000h,000h
        db 000h,000h,070h,018h,018h,018h,00Eh,018h
        db 018h,018h,018h,070h,000h,000h,000h,000h
        db 000h,000h,076h,0DCh,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,010h,038h,038h
        db 06Ch,06Ch,0FEh,000h,000h,000h,000h,000h
        db 000h,000h,03Ch,066h,0C0h,0C0h,0C0h,0C6h
        db 066h,03Ch,018h,00Ch,0CCh,038h,000h,000h
        db 000h,000h,0C6h,000h,000h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0CEh,076h,000h,000h,000h,000h
        db 000h,00Ch,018h,030h,000h,07Ch,0C6h,0C6h
        db 0FEh,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,030h,078h,0CCh,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,000h,0CCh,000h,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,060h,030h,018h,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,038h,06Ch,038h,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,000h,000h,000h,07Ch,0C6h,0C0h,0C0h
        db 0C6h,07Ch,018h,00Ch,06Ch,038h,000h,000h
        db 000h,030h,078h,0CCh,000h,07Ch,0C6h,0C6h
        db 0FEh,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0CCh,000h,000h,07Ch,0C6h,0C6h
        db 0FEh,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,030h,018h,00Ch,000h,07Ch,0C6h,0C6h
        db 0FEh,0C0h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,066h,000h,000h,038h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,018h,03Ch,066h,000h,038h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,038h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,0C6h,000h,038h,06Ch,0C6h,0C6h,0C6h
        db 0FEh,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 038h,06Ch,038h,000h,038h,06Ch,0C6h,0C6h
        db 0FEh,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 00Ch,018h,030h,000h,0FEh,060h,060h,07Ch
        db 060h,060h,060h,0FEh,000h,000h,000h,000h
        db 000h,000h,000h,000h,066h,0DBh,01Bh,07Fh
        db 0D8h,0D8h,0DFh,076h,000h,000h,000h,000h
        db 000h,000h,07Eh,0D8h,0D8h,0D8h,0D8h,0FEh
        db 0D8h,0D8h,0D8h,0DEh,000h,000h,000h,000h
        db 000h,030h,078h,0CCh,000h,07Ch,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,0C6h,000h,000h,07Ch,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,030h,018h,00Ch,000h,07Ch,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,030h,078h,0CCh,000h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0CEh,076h,000h,000h,000h,000h
        db 000h,060h,030h,018h,000h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0CEh,076h,000h,000h,000h,000h
        db 000h,018h,000h,03Ch,018h,018h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,0C6h,000h,07Ch,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,0C6h,000h,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,018h,018h,07Ch,0C6h,0C0h,0C0h
        db 0C6h,07Ch,018h,018h,000h,000h,000h,000h
        db 000h,038h,06Ch,060h,060h,0F0h,060h,060h
        db 060h,066h,0F6h,06Ch,000h,000h,000h,000h
        db 000h,066h,066h,066h,066h,03Ch,018h,07Eh
        db 018h,03Ch,018h,018h,000h,000h,000h,000h
        db 000h,000h,03Eh,063h,063h,030h,01Ch,006h
        db 063h,063h,03Eh,000h,01Ch,000h,000h,000h
        db 000h,000h,000h,000h,000h,03Eh,063h,038h
        db 00Eh,063h,03Eh,000h,01Ch,000h,000h,000h
        db 000h,00Ch,018h,030h,000h,078h,00Ch,07Ch
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,00Ch,018h,030h,000h,038h,018h,018h
        db 018h,018h,018h,03Ch,000h,000h,000h,000h
        db 000h,00Ch,018h,030h,000h,07Ch,0C6h,0C6h
        db 0C6h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,018h,030h,060h,000h,0CCh,0CCh,0CCh
        db 0CCh,0CCh,0DCh,076h,000h,000h,000h,000h
        db 000h,000h,076h,0DCh,000h,0BCh,066h,066h
        db 066h,066h,066h,0E6h,000h,000h,000h,000h
        db 000h,076h,0DCh,000h,0C6h,0C6h,0E6h,0F6h
        db 0DEh,0CEh,0C6h,0C6h,000h,000h,000h,000h
        db 000h,021h,01Eh,000h,01Eh,033h,060h,060h
        db 067h,063h,033h,01Dh,000h,000h,000h,000h
        db 000h,042h,03Ch,000h,03Bh,066h,066h,066h
        db 03Eh,006h,066h,03Ch,000h,000h,000h,000h
        db 000h,000h,030h,030h,000h,030h,030h,030h
        db 060h,0C6h,0C6h,07Ch,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,07Eh
        db 060h,060h,060h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,07Eh
        db 006h,006h,006h,000h,000h,000h,000h,000h
        db 000h,060h,060h,062h,066h,06Ch,018h,030h
        db 060h,0DCh,036h,00Ch,018h,03Eh,000h,000h
        db 000h,060h,060h,062h,066h,06Ch,018h,036h
        db 06Eh,0DEh,036h,07Eh,006h,006h,000h,000h
        db 000h,000h,018h,018h,000h,018h,018h,03Ch
        db 03Ch,03Ch,03Ch,018h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,036h,06Ch,0D8h
        db 06Ch,036h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0D8h,06Ch,036h
        db 06Ch,0D8h,000h,000h,000h,000h,000h,000h
        db 011h,044h,011h,044h,011h,044h,011h,044h
        db 011h,044h,011h,044h,011h,044h,011h,044h
        db 0AAh,055h,0AAh,055h,0AAh,055h,0AAh,055h
        db 0AAh,055h,0AAh,055h,0AAh,055h,0AAh,055h
        db 0DDh,077h,0DDh,077h,0DDh,077h,0DDh,077h
        db 0DDh,077h,0DDh,077h,0DDh,077h,0DDh,077h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,0F8h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,0F8h,018h,0F8h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 036h,036h,036h,036h,036h,036h,036h,0F6h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 000h,000h,000h,000h,000h,000h,000h,0FEh
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 000h,000h,000h,000h,000h,0F8h,018h,0F8h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 036h,036h,036h,036h,036h,0F6h,006h,0F6h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 000h,000h,000h,000h,000h,0FEh,006h,0F6h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,0F6h,006h,0FEh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 036h,036h,036h,036h,036h,036h,036h,0FEh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 018h,018h,018h,018h,018h,0F8h,018h,0F8h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,0F8h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,01Fh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 018h,018h,018h,018h,018h,018h,018h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,0FFh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,01Fh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 000h,000h,000h,000h,000h,000h,000h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 018h,018h,018h,018h,018h,018h,018h,0FFh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,01Fh,018h,01Fh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 036h,036h,036h,036h,036h,036h,036h,037h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,037h,030h,03Fh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,03Fh,030h,037h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,0F7h,000h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0FFh,000h,0F7h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,037h,030h,037h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 000h,000h,000h,000h,000h,0FFh,000h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 036h,036h,036h,036h,036h,0F7h,000h,0F7h
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 018h,018h,018h,018h,018h,0FFh,000h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 036h,036h,036h,036h,036h,036h,036h,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0FFh,000h,0FFh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 000h,000h,000h,000h,000h,000h,000h,0FFh
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,036h,036h,03Fh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 018h,018h,018h,018h,018h,01Fh,018h,01Fh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,01Fh,018h,01Fh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 000h,000h,000h,000h,000h,000h,000h,03Fh
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 036h,036h,036h,036h,036h,036h,036h,0FFh
        db 036h,036h,036h,036h,036h,036h,036h,036h
        db 018h,018h,018h,018h,018h,0FFh,018h,0FFh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,0F8h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,01Fh
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
        db 0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
        db 0F0h,0F0h,0F0h,0F0h,0F0h,0F0h,0F0h,0F0h
        db 0F0h,0F0h,0F0h,0F0h,0F0h,0F0h,0F0h,0F0h
        db 00Fh,00Fh,00Fh,00Fh,00Fh,00Fh,00Fh,00Fh
        db 00Fh,00Fh,00Fh,00Fh,00Fh,00Fh,00Fh,00Fh
        db 0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh,0FFh
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,076h,0DCh,0D8h,0D8h
        db 0D8h,0D8h,0DCh,076h,000h,000h,000h,000h
        db 000h,000h,078h,0CCh,0CCh,0D8h,0FCh,0C6h
        db 0C6h,0C6h,0C6h,0CCh,000h,000h,000h,000h
        db 000h,000h,0FEh,066h,062h,060h,060h,060h
        db 060h,060h,060h,060h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,0FEh,06Ch,06Ch
        db 06Ch,06Ch,06Ch,06Ch,000h,000h,000h,000h
        db 000h,000h,0FEh,0C6h,062h,030h,018h,018h
        db 030h,062h,0C6h,0FEh,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Eh,0D8h,0CCh
        db 0CCh,0CCh,0D8h,070h,000h,000h,000h,000h
        db 000h,000h,000h,000h,066h,066h,066h,066h
        db 066h,07Ch,060h,0C0h,080h,000h,000h,000h
        db 000h,000h,000h,000h,000h,076h,0DCh,018h
        db 018h,018h,018h,018h,000h,000h,000h,000h
        db 000h,000h,0FEh,038h,038h,06Ch,0C6h,0C6h
        db 06Ch,038h,038h,0FEh,000h,000h,000h,000h
        db 000h,000h,000h,038h,06Ch,0C6h,0C6h,0FEh
        db 0C6h,0C6h,06Ch,038h,000h,000h,000h,000h
        db 000h,000h,038h,06Ch,0C6h,0C6h,0C6h,0C6h
        db 06Ch,06Ch,06Ch,0EEh,000h,000h,000h,000h
        db 000h,000h,03Eh,060h,060h,03Ch,066h,0C6h
        db 0C6h,0C6h,0CCh,078h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Eh,0DBh,0DBh
        db 0DBh,07Eh,000h,000h,000h,000h,000h,000h
        db 000h,000h,002h,006h,07Ch,0CEh,0DEh,0F6h
        db 0F6h,07Ch,060h,0C0h,000h,000h,000h,000h
        db 000h,000h,000h,01Ch,030h,060h,060h,07Ch
        db 060h,060h,030h,01Ch,000h,000h,000h,000h
        db 000h,000h,07Ch,0C6h,0C6h,0C6h,0C6h,0C6h
        db 0C6h,0C6h,0C6h,0C6h,000h,000h,000h,000h
        db 000h,000h,000h,000h,0FEh,000h,000h,0FEh
        db 000h,000h,0FEh,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,018h,018h,07Eh,018h
        db 018h,000h,000h,07Eh,000h,000h,000h,000h
        db 000h,000h,030h,018h,00Ch,006h,00Ch,018h
        db 030h,000h,000h,07Eh,000h,000h,000h,000h
        db 000h,000h,00Ch,018h,030h,060h,030h,018h
        db 00Ch,000h,000h,07Eh,000h,000h,000h,000h
        db 000h,000h,000h,000h,00Ch,01Eh,01Ah,018h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,018h,018h,018h,018h,018h,018h
        db 018h,018h,058h,078h,030h,000h,000h,000h
        db 000h,000h,000h,000h,018h,018h,000h,07Eh
        db 000h,018h,018h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,076h,0DCh
        db 000h,076h,0DCh,000h,000h,000h,000h,000h
        db 000h,000h,078h,0CCh,0CCh,078h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,018h
        db 018h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 018h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,01Fh,018h,018h,018h,018h,018h
        db 0D8h,0D8h,078h,038h,018h,000h,000h,000h
        db 000h,000h,0D8h,06Ch,06Ch,06Ch,06Ch,06Ch
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,070h,0D8h,018h,030h,060h,0F8h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,07Eh,07Eh,07Eh
        db 07Eh,07Eh,07Eh,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
        db 000h,000h,000h,000h,000h,000h,000h,000h
    input db 0
data ends

code segment
	assume cs:code, ds:data
    setup:
        mov ax, data
        mov ds, ax		;Assign data segment address to DS register
	    mov ah, 01h		;Prepare input character call
        xor bx, bx		;initialize bx
	    mov cx, 02h		;loop twice to get input
    kb_input:
        sub cx, 01h
        int 21h			;call input character function
        jmp function_start
    function_end:
        add bl, al
        cmp cx, 01h		
        je left_shift	;shift for high four digit
        cmp cx, 00h
        jne kb_input
        jmp display_
    left_shift:
		push cx         ;reserve cx
                        ;(since it is used to control input loop)
		mov cx, 04h     ;loop for 4 times
		shift_:         ;shift left 4 times
			shl bl, 1
			loop shift_
		pop cx
        jmp kb_input
    
    function_start:		;convert ASCII char to octal value
        cmp al, '9'
        jbe is_digit    ;<='9',it falls in[0:9]
        cmp al, 'Z'
        jbe is_bigword  ;<='Z',it falls in[A:F]
                        ;then it falls in[a:f]
        sub al, 57h 	;al=al-'a'+10
        jmp function_end
    is_digit:
        sub al, '0'     ;al=al-'0'
        jmp function_end
    is_bigword:
        sub al, 37h 	;al=al-'A'+10
        jmp function_end

    display_:
	    int 21h			;input <ENTER>
        xor bh, bh
	    mov ax, bx
	    mov bl, 16      
	    mul bx			;ax=bx*16
        mov si, ax		;si used for searching ASCII 8*16 table
		
        mov ax, 0a000h
        mov es, ax		;memory address for video card=ַa000h
		mov ax, 13h     
		int 10h			;change to graphic mode

		
    first_:				;the first loop(16 times)
		mov ch, 0       ;ch <=> x, cl <==> y
		mov ax, cx      ;since ch=0, cx=cl=y
		push cx         ;protect cx
		mov cx, 320
		mul cx          ;ax=cx*320
		pop cx
		mov di, ax 		;di=320*y
		mov dl, byte ptr ds:[si]    ;now byte containing 8bits
		xor dh, dh
		
        second_:		;the second loop(8 times)
			rol dl, 1   ;every time rotate shift left
			push dx     ;protect dx
			and dx, 1   ;to get the (7-x)th digit
			cmp dx, 0
			je draw_back
            mov byte ptr es:[di], 0Ch       ;1 means show red point
			jmp second_tail
			draw_back: 
                mov byte ptr es:[di], 01h	;0 means show blue point 
			second_tail:
                pop dx  ;release dx
                inc di	;update video card' memory address index
                inc ch
                cmp ch, 8
                jne second_

		inc si      ;update ASCII table index
        inc cl
        cmp cl, 16
        jne first_
    exit:
		mov ah, 0       ;wait for input
        int 16h
		mov ax, 03h     ;change to word mode
		int 10h
        mov ah, 4Ch     ;terminate
        int 21h
code ends
	end setup